<?php
/*
| --------------------------------------------------------------------------------------------------
| <search_cep>
| Desenvolvedor:	eduardo
| E-mail:		eduardo.sirangelo@21century.com.br
| Descrição:
|	- 
| Quality is Everyting
| --------------------------------------------------------------------------------------------------
*/

if (!defined('BASEPATH')) exit('No direct script access allowed');

class Search_cep {
    
    function get_cep_db($cep) {
        
        $this->CI = get_instance();
        $DB2 = $this->CI->load->database("cep",TRUE);
        
        //BUSCA DO ESTADO, BASEADO NO CEP, PARA A ESCOLHA DA TABELA
        $cep5  = substr($cep, 0,5);
        $query = $DB2->query("SELECT uf FROM cep_log_index WHERE cep5 = '$cep5'");
        //BASEADO NA TABELA, BUSCA OS DADOS DO CEP
        $row = $query->row();
        $uf  = $row->uf;
        
        if($uf != "") {
        
            $query0 = $DB2->query("SELECT * FROM " . $uf . " WHERE cep = '$cep'");

            if($query0->num_rows() > 0) {
                return "TRUE";
            } else {

                $cep2   = $cep5 . "-000";
                $query1 = $DB2->query("SELECT * FROM cep_unico WHERE cep = '$cep2'");
                if($query1->num_rows() > 0) {
                    return "TRUE";
                } else {
                    return "FALSE";
                }
            }
            
        } else {
            return "FALSE";
        }
    }
    
    function retorna_dados_db_cep($cep) {
        
        $this->CI = get_instance();
        $DB2 = $this->CI->load->database("cep",TRUE);
        
        //BUSCA DO ESTADO, BASEADO NO CEP, PARA A ESCOLHA DA TABELA
        $cep5  = substr($cep, 0,5);
        $query = $DB2->query("SELECT uf FROM cep_log_index WHERE cep5 = '$cep5'");
        
        //BASEADO NA TABELA, BUSCA OS DADOS DO CEP
        $row = $query->row();
        $uf  = $row->uf;
        
        if($uf != "") {
        
            $query0 = $DB2->query("SELECT * FROM " . $uf . " WHERE cep = '$cep'");

            if($query0->num_rows() > 0) {

                $row0 = $query0->row();

                $resultado_busca['resultado']           = "1";
                $resultado_busca['uf']                  = strtoupper($uf);
                $resultado_busca['cidade']              = $row0->cidade;
                $resultado_busca['bairro']              = $row0->bairro;
                $resultado_busca['tipo_logradouro']     = $row0->tp_logradouro;
                $resultado_busca['logradouro']          = $row0->logradouro;


            } else {

                $cep2   = $cep5 . "-000";
                $query1 = $DB2->query("SELECT * FROM cep_unico WHERE cep = '$cep2'");
                if($query1->num_rows() > 0) {

                    $row1 = $query1->row();

                    $resultado_busca['resultado']           = "2";
                    $resultado_busca['uf']                  = $row1->uf;
                    $resultado_busca['cidade']              = $row1->cidade;

                } else {
                    $resultado_busca['resultado']           = "0";
                }
            }
            
        } else {
            
            $resultado_busca['resultado']           = "0";
            
        }
        
        return $resultado_busca;
    }
    
    function retorna_dados_webservice_cep($cep) {

        $cep = str_replace("-", "",$cep);
        
        /*
         *  Função de busca de Endereço pelo CEP
         *  -   Desenvolvido Felipe Olivaes para ajaxbox.com.br
         *  -   Utilizando WebService de CEP da republicavirtual.com.br
         */
        function busca_cep($cep){
            $resultado = @file_get_contents('http://republicavirtual.com.br/web_cep.php?cep='.urlencode($cep).'&formato=query_string');
            if(!$resultado){
                $resultado = "&resultado=0&resultado_txt=erro+ao+buscar+cep";
            }
            parse_str($resultado, $retorno);
            return $retorno;
        }

        $xml  = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
        $xml .="<retorno>\n";
        
        return busca_cep($cep);
    }
    
}
?>
